using System;
using System.Collections.Generic;


namespace Gfw.Models.Views
{
	[Serializable]
	public partial class UserCount
	{

		#region Private Members

		private string _id; 
		private string _code; 
		private int _oldleftchildren; 
		private int _oldrightchildren; 
		private int _newleftchildren; 
		private int _newrightchildren; 		
		#endregion

		#region Constructor

        public UserCount()
		{
			_id = String.Empty; 
			_code = String.Empty; 
			_oldleftchildren = 0; 
			_oldrightchildren = 0; 
			_newleftchildren = 0; 
			_newrightchildren = 0; 
		}
		#endregion // End of Default ( Empty ) Class Constuctor

		#region Public Properties
			
		public virtual string Id
		{
			get
			{ 
				return _id;
			}

			set	
			{	
				if( value == null )
					throw new ArgumentOutOfRangeException("Null value not allowed for Id", value, "null");
				
				if(  value.Length > 40)
					throw new ArgumentOutOfRangeException("Invalid value for Id", value, value.ToString());
				
				_id = value;
			}
		}
			
		public virtual string Code
		{
			get
			{ 
				return _code;
			}

			set	
			{	
				if(  value != null &&  value.Length > 100)
					throw new ArgumentOutOfRangeException("Invalid value for Code", value, value.ToString());
				
				_code = value;
			}
		}
			
		public virtual int OldLeftChildren
		{
			get
			{ 
				return _oldleftchildren;
			}
			set
			{
				_oldleftchildren = value;
			}

		}
			
		public virtual int OldRightChildren
		{
			get
			{ 
				return _oldrightchildren;
			}
			set
			{
				_oldrightchildren = value;
			}

		}
			
		public virtual int NewLeftChildren
		{
			get
			{ 
				return _newleftchildren;
			}
			set
			{
				_newleftchildren = value;
			}

		}
			
		public virtual int NewRightChildren
		{
			get
			{ 
				return _newrightchildren;
			}
			set
			{
				_newrightchildren = value;
			}

		}
			
				
		#endregion 

		#region Public Functions

		#endregion //Public Functions

		
		
	}
}
